UintBuffer   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 75
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 21
dl 0
loc 75
rs 10
c 0
b 0
f 0
wmc 5

5 Functions

Rating   Name   Duplication   Size   Complexity  
A pack 0 11 1
A unpack 0 9 1
A overflow 0 8 1
A unpackUnsafe 0 8 1
A packUnsafe 0 11 1
1
// Type definitions for uint-buffer 1.0
2
// Project: https://github.com/rochars/uint-buffer
3
// Definitions by: Rafael da Silva Rocha <https://github.com/rochars>
4
// Definitions: https://github.com/rochars/uint-buffer
5
6
export = UintBuffer;
7
8
declare module UintBuffer {
9
10
  class UintBuffer {
11
    /**
12
     * @param {number} bits The number of bits used by the integer.
13
     */
14
    constructor(bits: number);
15
16
    /**
17
     * The number of bits used by one number.
18
     * @type {number}
19
     */
20
    bits: number;
21
22
    /**
23
     * The number of bytes used by one number.
24
     * @type {number}
25
     */
26
    bytes: number;
27
    /**
28
     * @type {number}
29
     * @protected
30
     */
31
    max: number;
32
    /**
33
     * @type {number}
34
     * @protected
35
     */
36
    min: number;
37
38
    /**
39
     * Write one unsigned integer to a byte buffer.
40
     * @param {!Uint8Array|!Array<number>} buffer An array of bytes.
41
     * @param {number} num The number.
42
     * @param {number=} index The index being written in the byte buffer.
43
     * @return {number} The next index to write on the byte buffer.
44
     * @throws {TypeError} If num is not a number.
45
     * @throws {RangeError} On overflow.
46
     */
47
    pack(buffer: Uint8Array|number[], num: number, index?: number): number;
48
49
    /**
50
     * Read one unsigned integer from a byte buffer.
51
     * @param {!Uint8Array|!Array<number>} buffer An array of bytes.
52
     * @param {number=} index The index to read.
53
     * @return {number} The number.
54
     * @throws {RangeError} On overflow.
55
     */
56
    unpack(buffer: Uint8Array|number[], index?: number): number;
57
58
    /**
59
     * Write one unsigned integer to a byte buffer.
60
     * This method assumes the input has already been validated
61
     * and should be used only if you know what you are doing.
62
     * @param {!Uint8Array|!Array<number>} buffer An array of bytes.
63
     * @param {number} num The number.
64
     * @param {number=} index The index being written in the byte buffer.
65
     * @return {number} The next index to write on the byte buffer.
66
     */
67
    packUnsafe(buffer: Uint8Array|number[], index?: number): number;
68
69
    /**
70
     * Read one integer number from a byte buffer.
71
     * @param {!Uint8Array|!Array<number>} buffer An array of bytes.
72
     * @param {number=} index The index to read.
73
     * @return {number}
74
     */
75
    unpackUnsafe(buffer: Uint8Array|Array<number>, index?: number): number;
76
77
    /**
78
     * Throws error in case of overflow.
79
     * @param {number} num The number.
80
     * @throws {RangeError} On overflow.
81
     * @protected
82
     */
83
    overflow(num: number): void;
84
  }
85
}
86